#region License Revision: 0 Last Revised: 6/18/2008 11:00 AM
/******************************************************************************
Copyright (c) Microsoft Corporation.  All rights reserved.


This file is licensed under the Microsoft Public License (Ms-PL). A copy of the Ms-PL should accompany this file. 
If it does not, you can obtain a copy from: 

http://www.microsoft.com/resources/sharedsource/licensingbasics/publiclicense.mspx
******************************************************************************/
#endregion // License
using System;
using System.Windows.Browser;
using System.Diagnostics;
using System.Text;
using ScriptInterop;
using System.Globalization;

namespace VIEWS // Virtual Earth Wrapper
{

	/// <summary> Contains the options to set when loading the map. </summary>
	public class VEMapOptions : JSObject
	{
		/// <summary>String holding JavaScript class name</summary>
		private static string thisClass = "VEMapOptions";
		
		/// <summary>Get the JavaScript class name</summary>
		/// <returns type="String">The class name used in JavaScript </returns>		
		public override string ClassName
		{
			get { return thisClass; }
		}

		/// <summary>Construct a C# wrapper from a ScriptObject</summary>
		public VEMapOptions(ScriptObject so) : base(so) { }


		/// <summary>Default constructor</summary>
		public VEMapOptions()
		{
			ScriptObject = CreateClass();
		}

        /// <summary>A <see cref="VEOrientation"/> Enumeration value indicating the orientation of the bird's eye map. The default value is <see cref="VEOrientation.North"/>.</summary>		
        public VEOrientation BirdseyeOrientation
		{
            get { return ScriptEnumConverter.ToOrientation(GetProperty<string>("BirdseyeOrientation")); }
            set { SetProperty("BirdseyeOrientation", ScriptEnumConverter.ToString(value)); }
		}

        /// <summary>A Boolean value specifying whether or not to enable the Birdseye map style in the map control. The default value is <c>true</c>.</summary>		
        public bool EnableBirdseye
		{
            get { return GetProperty<bool>("EnableBirdseye"); }
            set { SetProperty("EnableBirdseye", value); }
		}
		
		/// <summary>
        /// A Boolean value that specifies whether or not labels appear on the map when a user clicks the Aerial or Birdseye map style buttons on the map control dashboard. The default value is <c>true</c>.
        /// </summary>		
        public bool EnableDashboardLabels
		{
            get { return GetProperty<bool>("EnableDashboardLabels"); }
            set { SetProperty("EnableDashboardLabels", value); }
		}

        /// <summary>
        /// A Boolean value indicating whether or not to load the base map tiles. The default value is <c>true</c>.
        /// </summary>		
        public bool LoadBaseTiles
        {
            get { return GetProperty<bool>("LoadBaseTiles"); }
            set { SetProperty("LoadBaseTiles", value); }
        }
	};
}
